// ==========================================================================
// GFast自动生成model操作代码。
// 生成日期：2023-12-01 16:05:36
// 生成路径: internal/app/plugins/sms/model/plugin_sms_log.go
// 生成人：gfast
// desc:短信日志
// company:云南奇讯科技有限公司
// ==========================================================================

package model

import (
	"github.com/gogf/gf/v2/os/gtime"
	"github.com/gogf/gf/v2/util/gmeta"
	comModel "github.com/tiger1103/gfast/v3/internal/app/common/model"
)

// PluginSmsLogInfoRes is the golang structure for table plugin_sms_log.
type PluginSmsLogInfoRes struct {
	gmeta.Meta `orm:"table:plugin_sms_log"`
	Id         uint        `orm:"id,primary" json:"id" dc:"ID"`           // ID
	SmsType    string      `orm:"sms_type" json:"smsType" dc:"短信平台的类型"`   // 短信平台的类型
	MsgType    string      `orm:"msg_type" json:"msgType" dc:"短信的类型"`     // 短信的类型
	Templateid string      `orm:"templateid" json:"templateid" dc:"模板id"` // 模板id
	Mobiles    string      `orm:"mobiles" json:"mobiles" dc:"电话号码"`       // 电话号码
	Params     string      `orm:"params" json:"params" dc:"模板参数"`         // 模板参数
	Result     string      `orm:"result" json:"result" dc:"发送结果"`         // 发送结果
	CreatedAt  *gtime.Time `orm:"created_at" json:"createdAt" dc:"发送日期"`  // 发送日期
	UpdatedAt  *gtime.Time `orm:"updated_at" json:"updatedAt" dc:""`      //
	DeletedAt  *gtime.Time `orm:"deleted_at" json:"deletedAt" dc:""`      //
}

type PluginSmsLogListRes struct {
	Id         uint        `json:"id" dc:"ID"`
	SmsType    string      `json:"smsType" dc:"短信平台的类型"`
	MsgType    string      `json:"msgType" dc:"短信的类型"`
	Templateid string      `json:"templateid" dc:"模板id"`
	Mobiles    string      `json:"mobiles" dc:"电话号码"`
	Params     string      `json:"params" dc:"模板参数"`
	CreatedAt  *gtime.Time `json:"createdAt" dc:"发送日期"`
}

// PluginSmsLogSearchReq 分页请求参数
type PluginSmsLogSearchReq struct {
	comModel.PageReq
	SmsType    string `p:"smsType" dc:"短信平台的类型"`                                                   //短信平台的类型
	MsgType    string `p:"msgType" dc:"短信的类型"`                                                     //短信的类型
	Templateid string `p:"templateid" dc:"模板id"`                                                   //模板id
	Mobiles    string `p:"mobiles" dc:"电话号码"`                                                      //电话号码
	CreatedAt  string `p:"createdAt" v:"createdAt@datetime#发送日期需为YYYY-MM-DD hh:mm:ss格式" dc:"发送日期"` //发送日期
}

// PluginSmsLogSearchRes 列表返回结果
type PluginSmsLogSearchRes struct {
	comModel.ListRes
	List []*PluginSmsLogListRes `json:"list"`
}

// PluginSmsLogAddReq 添加操作请求参数
type PluginSmsLogAddReq struct {
	SmsType    string `p:"smsType"  dc:"短信平台的类型"`
	MsgType    string `p:"msgType"  dc:"短信的类型"`
	Templateid string `p:"templateid"  dc:"模板id"`
	Mobiles    string `p:"mobiles"  dc:"电话号码"`
	Params     string `p:"params"  dc:"模板参数"`
	Result     string `p:"result"  dc:"发送结果"`
}

// PluginSmsLogEditReq 修改操作请求参数
type PluginSmsLogEditReq struct {
	Id         uint   `p:"id" v:"required#主键ID不能为空" dc:"ID"`
	SmsType    string `p:"smsType"  dc:"短信平台的类型"`
	MsgType    string `p:"msgType"  dc:"短信的类型"`
	Templateid string `p:"templateid"  dc:"模板id"`
	Mobiles    string `p:"mobiles"  dc:"电话号码"`
	Params     string `p:"params"  dc:"模板参数"`
	Result     string `p:"result"  dc:"发送结果"`
}


type ClientArg struct {
	SmsType    string   // 平台类型
	MsgType    string   // 短信类型
	Result     string   // 短信发送结果
	TemplateId string   // 模板id
	Mobiles    []string // 手机号
	Params     []string // 发送参数
}